import {createRouter, createWebHashHistory} from 'vue-router'

import Home from '../components/Home.vue'
import Login from '../components/Login.vue'

const router = createRouter({
    history:createWebHashHistory(),
    routes:[
        {
            path:'/',
            component:Home
        },
        {
            path:'/home',
            component:Home
        },
        {
            path:'/login',
            component:Login
        }
    ]
})

/**
 * router.beforeEach前置守卫 切换页面之前执行
 * router.afterEach后置守卫 切换页面之后执行
 * 
 * from 上一个页面 从哪里来
 * to 下一个页面 到哪里去
 * next 放行的方法 执行该方法才会放行路由
 *      next() 放行
 *      next('/路径') 路由的重定向 放置在一个分支中，防止死循环
 */
// 路由守卫 校验登录
router.beforeEach((to,from,next)=>{
    if(to.path=='/login'){
        // 直接放行
        next()
    }else{
        // 如果是其他资源，需要校验是否登录
        const username = sessionStorage.getItem('username')
        if(null != username){
            next()
        }else{
            next('/login')
        }
    }
})

export default router
